package com.beizhen.demo.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.beizhen.demo.dao.StuUserDao;
import com.beizhen.demo.entity.StuUser;
import com.beizhen.demo.service.StuUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**
* 用户表 业务逻辑接口的实现类
*/
@Service
public class StuUserServiceImpl extends ServiceImpl<StuUserDao, StuUser> implements StuUserService {

    @Autowired
    private StuUserDao stuUserDao;

    /**
     * 2020年7月13日22点16分
     * 孟希
     * 基地注册
     *
     * @param stuUser
     */
    @Override
    public Integer base_register(StuUser stuUser) {
        return stuUserDao.base_register(stuUser);
    }

    /**
     * 2020年7月13日22点16分
     * 孟希
     * 登陆
     *
     * @param map
     */
    @Override
    public StuUser doLogin(Map<String, Object> map) {
        return stuUserDao.doLogin(map);
    }

    /**
     * 2020年7月13日22点16分
     * 孟希
     * 修改个人信息
     *
     * @param map
     */
    @Override
    public Integer UpdateUser(Map<String, Object> map) {
        return stuUserDao.UpdateUser(map);
    }
    /**
     * 2020年8月9日22点16分
     * 孟希
     * 查找角色信息
     *
     * @param mail
     */
    @Override
    public Set<String> findRolesByMail(String mail) {
        return stuUserDao.findRolesByMail(mail);
    }

    /**
     * 2020年8月9日22点16分
     * 孟希
     * 查找权限
     *
     * @param mail
     */
    @Override
    public Set<String> findPermissionsByMail(String mail) {
        return stuUserDao.findPermissionsByMail(mail);
    }

    /**
     * 2020年8月9日22点16分
     * 孟希
     * 查找个人信息
     *
     * @param uMailbox
     */
    @Override
    public StuUser findUserByMail(String uMailbox) {
        List<StuUser> list=stuUserDao.selectList(new QueryWrapper<StuUser>().eq("u_mailbox",uMailbox));
        if (list.size()>0 && list!=null){
            return list.get(0);
        }
        return null;
    }

}
